home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1996 #15 / Monster Media Number 15 (Monster Media)(July 1996).ISO / prog_d / qrep10b.zip / MAIN.PAS < prev    next >
Pascal/Delphi Source File  |  1996-04-14  |  3KB  |  118 lines

  1. unit Main;
  2.  
  3. interface
  4.  
  5. uses
  6.   SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  7.   Forms, Dialogs, StdCtrls,simprep,mdrep, biorep,ExtCtrls,printers, DBCtrls, DB,
  8.   DBTables,quickrep, Spin,demopre, Labelrep,textlist;
  9.  
  10. type
  11.   TTQuickReportDemo = class(TForm)
  12.     PreviewBtn: TButton;
  13.     PrintBtn: TButton;
  14.     PrintDialogChk: TCheckBox;
  15.     Bevel1: TBevel;
  16.     ExitBtn: TButton;
  17.     Image1: TImage;
  18.     Shape1: TShape;
  19.     Label2: TLabel;
  20.     ReportCombo: TRadioGroup;
  21.     OrientationCombo: TRadioGroup;
  22.     Label1: TLabel;
  23.     SpinEdit1: TSpinEdit;
  24.     Label3: TLabel;
  25.     PreviewCombo: TRadioGroup;
  26.     Label4: TLabel;
  27.     PrintDialog1: TPrintDialog;
  28.     Button1: TButton;
  29.     procedure ExitBtnClick(Sender: TObject);
  30.     procedure FormCreate(Sender: TObject);
  31.     procedure PrintBtnClick(Sender: TObject);
  32.     procedure PreviewBtnClick(Sender: TObject);
  33.     procedure SpinEdit1Change(Sender: TObject);
  34.     procedure ShowPreview;
  35.     procedure PreviewComboClick(Sender: TObject);
  36.     procedure Button1Click(Sender: TObject);
  37.   private
  38.     { Private declarations }
  39.     aReport : TQuickReport;
  40.     procedure PickReport;
  41.   public
  42.     { Public declarations }
  43.   end;
  44.  
  45. var
  46.   TQuickReportDemo: TTQuickReportDemo;
  47.  
  48. implementation
  49.  
  50. {$R *.DFM}
  51.  
  52. procedure TTQuickReportDemo.ExitBtnClick(Sender: TObject);
  53. begin
  54.    Close;
  55. end;
  56.  
  57. procedure TTQuickReportDemo.FormCreate(Sender: TObject);
  58. begin
  59.    ReportCombo.ItemIndex:=0;
  60.    OrientationCombo.ItemIndex:=0;
  61.    PreviewCombo.ItemIndex:=0;
  62. end;
  63.  
  64. procedure TTQuickReportDemo.PickReport;
  65. begin
  66.    case ReportCombo.ItemIndex of
  67.       0 : aReport:=SimpForm.SimpRep;
  68.       1 : aReport:=Bioform.BioRep;
  69.       2 : aReport:=mdform.mdRep;
  70.       3 : aReport:=LabelForm.Rep;
  71.       4 : aReport:=TextRep.Rep;
  72.    end;
  73.    aReport.DisplayPrintDialog:=PrintDialogChk.Checked;
  74.    if OrientationCombo.ItemIndex=0 then
  75.       aReport.Orientation:=poPortrait
  76.    else
  77.       aReport.Orientation:=poLandscape;
  78. end;
  79.  
  80. procedure TTQuickReportDemo.PrintBtnClick(Sender: TObject);
  81. begin
  82.    PickReport;
  83.    aReport.Print;
  84. end;
  85.  
  86. procedure TTQuickReportDemo.PreviewBtnClick(Sender: TObject);
  87. begin
  88.    PickReport;
  89.    aReport.Preview;
  90. end;
  91.  
  92. procedure TTQuickReportDemo.SpinEdit1Change(Sender: TObject);
  93. begin
  94.    QRPrinter.Thumbs:=SpinEdit1.Value;
  95. end;
  96.  
  97. procedure TTQuickReportDemo.ShowPreview;
  98. begin
  99.    { Show our custom preview form }
  100.    PrevForm.ShowModal;
  101. end;
  102.  
  103. procedure TTQuickReportDemo.PreviewComboClick(Sender: TObject);
  104. begin
  105.    if PreviewCombo.ItemIndex=0 then
  106.       QRPrinter.OnPreview:=nil                  { Select standard preview form }
  107.    else
  108.       QRPrinter.OnPreview:=ShowPreview;           { Select custom preview form }
  109. end;
  110.  
  111.  
  112. procedure TTQuickReportDemo.Button1Click(Sender: TObject);
  113. begin
  114. printdialog1.execute;
  115. end;
  116.  
  117. end.
  118.